filter=function(name,data)
{
	this.name=name;
	this.data=data;
	this.content=$('<div class=filtr1></div>');
	this.INIT();
}
filter.prototype.INIT=function()
{
	var me=this;
	for(key in me.data)
	{
		$(me.content).append("<div class='item'>"+me.data[key]+"</div>");
	}
	$('div#filtr_'+me.name).click(function(){
		$(document).trigger('filter','{"'+me.name+'":"*"}');
		
		$(me.where).find('.item').each(function(){
			
			if($(this).hasClass('highlight'))
			{
				$(this).removeClass('highlight');
			}
		});
		
	});
	$('.item',me.content).click(function(){
		if($(this).hasClass('highlight'))
		{
			$(document).trigger('filter_remove','{"'+me.name+'":"'+$(this).html()+'"}');
			$(this).removeClass('highlight');
		}
		else
		{
			$(document).trigger('filter','{"'+me.name+'":"'+$(this).html()+'"}');
			$(this).addClass('highlight');
		}
	
	});
}
filter.prototype.append=function()
{
	return this.content;
}
filter.prototype.appendTo=function(where)
{
	this.where=where;
	$(where).append(this.content);
}

listfilter=function(name,data)
{
	this.name=name;
	this.data=data;
	this.content=$('<div id=l_'+name+'></div>');
	this.INIT();
}
listfilter.prototype.INIT=function()
{
	var me=this;
	$(me.content).append('<input type=text class="filterList"/><div class="list_f_div"></div>');
	for(k in me.data)
	{
		$('.list_f_div',me.content).append('<div class=item_lf>'+me.data[k]+'</div>');
	}
	$('input.filterList',me.content).keyup(function(){
		var val=$(this).val();
		$(this).parent('div').find('div.item_lf').each(function(){
			if($(this).html().indexOf(val)==-1)
			{
				$(this).css('display','none');
			}
			else
			{
				$(this).css('display','block');
			}
		});
	});
}
listfilter.prototype.appendTo=function(where)
{
	this.where=where;
	$(where).append(this.content);
}